¿Qué es Data Warehouse en inteligencia de negocios? ¿Qué es inteligencia de negocios y Big Data? ¿Qué es Data Warehouse y ejemplos? ¿Qué es Data Warehouse y sus características?
Data Warehouse e inteligencia de negocios
Tipos de decisiones
Toda acción que se realiza o deja de hacer en una organización es fruto de las decisiones que toman las personas que la componen. Dentro de la misma, las decisiones pueden agruparse en diferentes niveles.
Si la decisión tiene influencia a largo plazo, es difícil de revertir, provoca impacto extensivo y contiene muchos factores de calidad involucrados, puede ser considerada una decisión de alto nivel (estratégico). Por lo general, estas decisiones no son programadas. Por el contrario, una decisión con efectos a corto plazo, fácil de revertir, con impacto único y que no involucra los factores de calidad puede ser tomada a un nivel muy inferior (operativo). Éstas suelen ser decisiones programadas.
Generalizando la estructura de una organización en base a la pirámide organizacional, el nivel operativo es donde se agrupa la mayoría de los trabajadores y los procedimientos están más estructurados y definidos. Los niveles superiores (nivel táctico y estratégico) efectúan actividades más relacionadas con el control y la toma de decisiones acerca de la dirección que debe tomar la organización.
Los trabajadores del nivel operativo necesitan información para el control y la toma de decisiones, ligadas a aspectos puntuales y específicos. En cambio, los niveles superiores necesitan información para un control más global y abarcativo, y para decisiones tácticas y estratégicas.
Los sistemas operacionales
Los sistemas operacionales son sistemas de información que dan soporte a los procesos del nivel operativo de la estructura organizacional. Este nivel es donde se realizan las actividades de rutina del negocio que permiten su funcionamiento. Cada una de estas funciones que necesita realizar una organización para cumplir con sus objetivos se encuentra apoyada por sistemas informáticos, denominados transaccionales u operacionales.
Estos sistemas requieren guardar y consultar datos. Las bases de datos que dan soporte a los sistemas de nivel operativo se denominan bases de datos OLTP (On Line Transactional Processing), donde el foco se encuentra en el tipo de procesamiento que deberá soportar dicha base de datos.
Características de los procesos que soportan
Características de las bases de datos OLTP
Estas bases de datos soportan procesos con las siguientes características:
- Transacciones que actualizan un conjunto de pocos registros.
- Transacciones que consultan un conjunto de pocos registros.
- Puede existir un alto nivel de concurrencia de las transacciones que consultan y actualizan.
- Son operaciones de actualización y consultas en línea (online) que deben tener una respuesta instantánea para no trabar las operaciones de la organización.
- Preparadas para recibir muchas transacciones de pocos registros.
- Alto desempeño (performance) en el acceso a los registros y a su actualización.
- Alta disponibilidad.
- Normalizadas para favorecer la actualización en línea y disminuir la probabilidad de inconsistencias que podrían generarse (lo que no implica que no exista redundancia).
- Índices que favorezcan la actualización en línea.
- Incluyen métodos de recuperación (para deshacer y rehacer transacciones) que aseguren la consistencia de la base de datos ante fallos en el sistema.
- Incluyen protocolos de control de concurrencia que aseguren la consistencia de la base de datos ante actualizaciones concurrentes.
- Información no integrada: los datos de la organización, que deben representar la realidad con la que ésta se maneja, se encuentran muchas veces dispersos y no integrados. Es decir, existen guardadas distintas realidades parciales de la organización, donde cada una es independiente del resto. Son bases de datos (o incluso archivos, en algunos casos) que tienen diseños conceptuales y físicos que difieren entre sí. La existencia de todas ellas puede deberse a divisiones funcionales, geográficas o por unidades de negocio. En base a esto, surgen los siguientes problemas:
- Existen diferentes visiones de una misma realidad entre los directivos de la organización.
- Imposibilidad de obtener información integrada que permita comparar, clasificar y consolidar la información de las distintas áreas, sectores, procesos, unidades, etc., para analizar la organización como un todo.
- Inadecuados tiempos de respuesta: gran parte de la información que necesitan los niveles tácticos y estratégicos para la toma de decisiones se construye a partir del acceso y procesamiento de importantes volúmenes de datos. Existe entonces para dicho propósito la necesidad de realizar consultas de grandes porciones de la base de datos en forma interactiva. En la medida en que las bases tienen grandes cantidades de datos, se hace muy difícil obtener adecuados tiempos de respuesta para este tipo de consultas. Además, hacen más lento el resto de las operaciones que deben realizarse con la base de datos, ya que los recursos de la computadora (principalmente procesador y disco) estarán ocupados respondiendo a sus requerimientos, que hacen un uso muy intensivo de estos recursos. En base a esto, surgen los siguientes problemas:
- Inadecuados tiempos de respuesta para las consultas que apoyan la toma de decisiones.
- Se entorpece el nivel de respuesta de los sistemas de nivel operativo, debido al uso intensivo de recursos informáticos, que genera el procesamiento de las consultas para la toma de decisiones.
- Imposibilidad de realizar consultas ad hoc amigables: los tomadores de decisiones necesitan alternativas “amigables” de acceso a los datos. Es decir, que puedan hacerlo sin tener mucho conocimiento sobre el uso de la tecnología, siendo ésta lo más “transparente” posible. El problema surge cuando los usuarios necesitan hacer consultas ad hoc en forma amigable, ya que, si bien existen lenguajes para acceder a los datos y realizar este tipo de consultas (SQL), implican por parte del usuario el conocimiento del lenguaje y de complejos modelos de datos. Estas capacidades no son acordes con el perfil de los usuarios que necesitan este tipo de información. El problema, entonces, es que los usuarios no cuentan con herramientas para explorar los datos y obtener información para la toma de decisiones en forma amigable para necesidades ad hoc.
- Si el problema es información no integrada e inadecuados tiempos de respuesta, el DW puede proveer importantes beneficios.
- Si existe el problema de no disponer de herramientas para obtener información ad hoc en forma amigable, entonces se deben explorar las tecnologías encuadradas bajo el BI.
- Fuentes de datos: incluye todos los datos en su lugar de origen (bases de datos o archivos planos) que se extraerán mediante una serie de procesos ETL (Extract, Transformation, Load) que permitirán incorporar el contenido al DW. Esta área se compone principalmente de los datos que almacenan los sistemas operacionales, pero también pueden existir datos externos, así como datos internos no sistematizados informáticamente.
- Área del DW: incluye todos los datos que se integran para brindar información para la toma de decisiones en forma eficaz y eficiente. Esta área puede ser dividida en 3 subáreas:
- Área de trabajo: aquí se realizan las principales transformaciones de datos, que incluyen limpieza de datos, combinación, homogeneización de unidades de medida, equivalencias de códigos, agregaciones de consistencia, etc. Esta área contendrá datos que todavía no están listos para ser consultados por los usuarios. Es un espacio de almacenamiento donde se estarán preparando los datos.
- DW objetivo o detallado: es una base de datos que contiene integrados los datos de toda la organización, con el mayor nivel de desagregación posible. Es una base de datos que representa la realidad de la organización desde una mirada puesta en los datos de origen, intentando reproducir las transacciones como fueron capturadas.
- DW subjetivo o agregado: podrá estar compuesto por una única base de datos o por múltiples (data marts). Esta o estas bases de datos están construidas según las necesidades de información de los usuarios para la toma de decisiones y de las herramientas de exploración que se vayan a usar. Se nutre del DW objetivo y, a diferencia de éste, es una representación integrada de la realidad desde la perspectiva de exploración de la información que podrán hacer los tomadores de decisiones. El principal objetivo de los data marts es lograr mejor performance o explotar una visión parcial con mayor detalle que el que se encuentre en un DW subjetivo.
- Herramientas de acceso y exploración de datos: es el componente que usufructúa los beneficios de la solución. Es lo que ven los usuarios. Se compone de las distintas herramientas que se implantan para explorar los datos, permitiendo cubrir diversos criterios y estilos de análisis de la información (análisis multidimensional, reportes, alertas, tablero de comando, etc.).
- Integrar los datos de los distintos sistemas OLTP, que se almacenan desintegrados entre sí, respondiendo a requerimientos puntuales de diversos sectores y funciones de la institución.
- Cargar datos externos que sirvan para analizar variables relevantes del entorno.
- Incorporar datos históricos que no existan en los sistemas OLTP (por ventana operacional y/o update de datos)
- Centrar el diseño y administración de la base de datos para hacer eficiente el procesamiento OLAP. Para ello es posible:
- Guardar datos precalculados.
- Usar índices que optimicen este tipo de consultas (sin preocuparse si son ineficientes en la actualización de datos).
- Emplear redundancia.
- Separar las bases de datos para que la alta concurrencia de la actualización que generan las transacciones OLTP no bloqueen las consultas OLAP.
- Posibilita diseños que facilitan su exploración por parte de los usuarios
- Orientados a temas: los datos no se almacenan con foco en la eficacia y eficiencia de las transacciones sino para proveer información relacionada con los temas y el lenguaje del negocio. Los datos organizados por temas contienen sólo la información necesaria para los procesos de soporte para tomar decisiones, y no necesariamente los necesarios para reproducir los hechos que le dieron origen a dicha información,
- Integrados: los datos deben estar almacenados con un criterio unificado. Físicamente pueden estar centralizados o distribuidos, pero lógicamente deben conformar una base de datos que represente la realidad integrada de la organización, tanto en lo que respecta a su alcance como en cuanto a los criterios homogéneos de codificación y calidad.
- Histórico (variante en el tiempo): la información que se desea obtener debe permitir efectuar comparaciones, observar tendencias y considerar la evolución de la organización. Es por ello que una dimensión sobre la cual debe tener especial atención un DW es el tiempo. Esta propiedad se enfoca en dos aspectos:
- La necesidad de conservar los datos en un DW por períodos prolongados (ventana temporal).
- La necesidad de que exista esta variable como un atributo significativo en los datos que se almacenan.
- No volátiles: se refiere a que los datos almacenados no son modificados, sino que solamente serán insertados agregando los nuevos hechos ya ocurridos y respetando la historia ya registrada. Esta característica hace que, en el diseño de la base de datos y el procesamiento de los datos, se puedan tomar ciertas libertades que beneficien la optimización de acceso; y que no son recomendables generalmente en los ambientes operacionales.
- Extraer: acceder y tomar datos de las distintas fuentes.
- Transformar: realizar las transformaciones que sean necesarias para dejar los datos en el formato, con la codificación, niveles de agregación, de calidad y criterios de integración que se definan.
- Cargar: actualizar el DW con dichos datos ya transformados.
- Periodicidad (cada cuánto se ejecuta) y horario: considera, por un lado, las necesidades del negocio respecto de la información, es decir con qué frecuencia es necesario tener datos actualizados para el análisis. Por el otro, considera la disponibilidad de los recursos, tanto de las fuentes de datos como del DW.
- Secuencia: en la que se ejecutan los n procesos que integran el ETL. Tiene mucha relevancia, ya que de lo contrario correría riesgo la integridad de la base de datos.
- Ocurrencia de un evento determinado en la base de datos: se delega en el software el monitoreo de ciertas variables del negocio para aliviar el trabajo de la persona que recibe la información y poder actuar sólo ante la ocurrencia del evento en cuestión.
- Planificación determinada con anterioridad: se envía información a una fecha y hora determinada. Puede ser una única vez o en forma repetitiva.
- Espontáneo de información (on demand): se da cuando un usuario está navegando por reportes, tableros de control, etc., y decide enviar en forma espontánea el resultado de su análisis a otros usuarios, tanto internos como externos a la organización. En este caso, el software le permite hacer un envío instantáneo de la información que él está analizando.
Debido a dichas características de procesamiento, estas bases de datos suelen tener las siguientes características:
Problemas del OLTP
Cuando se necesita información para usar en la toma de decisiones tácticas y estratégicas, las bases de datos OLTP que sirven de soporte a los sistemas de información operacionales pueden tener algunas deficiencias que no permiten cumplir las necesidades de estos niveles de decisión:
Data Warehouse y Business Intelligence
Data Warehouse (DW)
El Data Warehouse (DW) es una base de datos concebida y administrada para dar soporte a la toma de decisiones. Cuando se piensa en DW, se debe considerar una base de datos que posea datos representativos de la realidad integrada de toda la organización, que esté optimizada para el acceso de consultas que actúan sobre muchos registros, y que no tienen mayores problemas ya que la actualización no es en tiempo real.
Una solución de DW debe dejar como resultado una base de datos integrada, con datos que permitan responder a las necesidades de información para la toma de decisiones, principalmente de los niveles tácticos y estratégicos de la institución. Eso no quita que esta base de datos se use también para responder consultas de niveles operativos.
Inteligencia de negocios (Business Intelligence, BI)
La inteligencia de negocios (Business Intelligence, BI) define una solución donde se usan los datos para una administración “inteligente” de la organización. Desde el punto de vista de la tecnología, es posible enfocarlo para describir las herramientas de exploración y explotación de datos que den soporte a la toma de decisiones.
Cuando se encara una solución de BI ella incluye la existencia de una base de datos (por lo general, un DW) y la implantación de una o varias de estas herramientas: análisis multidimensional, tableros de control, alertas, reportes, etc.
Relaciones y diferencias
El BI está enfocado en el uso que se le dará al DW y se implementa a partir de un conjunto de herramientas que permiten acceder a los datos del DW y generar información valiosa para la toma de decisiones. El uno sin el otro no tiene sentido: generar un DW sin que se lo explore de forma que beneficie al negocio es un sinsentido. Por otro lado, usar herramientas de BI sin encarar primero la construcción de una base de datos que integre la realidad que se quiere conocer (y que esté concebida para un uso eficaz) tampoco lo tiene.
Solución de los problemas del OLTP
La tecnología, desde el punto de vista organizacional, sólo es adecuada en la medida en que aporta soluciones o beneficios a la institución. Es por ello que el análisis que debe realizar una organización a la hora de estudiar su incorporación es si estas tecnologías están aportando a solucionar los problemas que presenta el OLTP.
Arquitectura de la solución
Los componentes que integran la arquitectura de una solución de DW/BI son:
Los datos del DW se obtienen del área de fuentes de datos a través de procesos informáticos que se encargan de la extracción. Todos estos datos por lo general tienen como destino una base de datos (o un área de la misma) que es el área de trabajo, se correrán procesos informáticos que realicen la transformación de datos. Una vez que los datos estén listos, se pasarán al DW objetivo, al subjetivo o a los data marts. El sector dependerá de la arquitectura que la organización elija (puede prescindir del DW objetivo).
Sin embargo, cabe tener en cuenta que la calidad de los datos implica que los datos representan lo que deben representar, es decir, objetos del mundo real. Si la base transaccional no tiene datos de calidad, como el DW se nutre de esos datos, tampoco asegura la calidad de los mismos.
DW en profundidad
Procesamiento
Un DW utiliza, a diferencia de las bases de datos transaccionales, el procesamiento OLAP (Online Analytical Processing):
Procesamiento OLTP
Procesamiento OLAP
Objetivo
Se orienta a la actualización y recuperación de datos en los sistemas informáticos que soportan la operatoria diaria de la organización (transaccional).
Procesamiento que se enfoca en la consulta de grandes porciones de la base de datos para mostrar información principalmente agregada.
Cantidad de registros que procesa
Tiene la característica de insertar, modificar, eliminar o consultar una cantidad pequeña de registros por vez.
Necesita el acceso y la recuperación de grandes cantidades de registros de la base de datos.
Nivel organizacional
Se usa en los sistemas del nivel operativo de la estructura organizacional.
Los niveles táctico y estratégico necesitan de este tipo de procesamiento para obtener información resumida y abarcar diversos períodos de tiempo que les permita detectar tendencias, problemas y aciertos.
Si bien las bases de datos transaccionales se crearon y administraron para cumplir eficientemente los requerimientos del procesamiento OLTP, no pueden cumplir adecuadamente los requerimientos del procesamiento OLAP. Es allí donde se presentan los problemas. Es por ello que el DW, al ser una base de datos que se crea específicamente para este propósito, puede:
Update de datos: puede tener distintas versiones del mismo dato porque cambiaron a través del tiempo (por ejemplo la dirección)
Ventana operacional: cuanto tiempo tengo en cuenta para mi DW? Meses? ¿Años?
Propiedades
Procesos ETL
El ETL (Extraction, Transformation and Load; extracción, transformación y carga) es la forma en que se denomina al conjunto de procesos mediante los cuales se genera y actualiza el contenido del DW. Estos procesos deben resolver el mayor problema de la construcción de un DW: la homogeneización de datos provenientes de fuentes diversas.
Los procesos ETL deben:
Los procesos que componen el ETL necesitan ser ejecutados sobre la base de una programación temporal. Esta debe ser definida en función de las necesidades de actualización que amerite el DW. La programación incluye:
Data mart
El data mart (mercado de datos) es el nombre que se le asigna a una base de datos que asume las mismas características definidas para un DW, pero en lugar de representar la realidad de toda una organización, sólo lo hace respecto de un área o función de ella. Han tomado bastante relevancia debido a la complejidad que implica la implantación del DW. La suma de los data marts no necesariamente conforma un DW integrado.
Redundancia
La redundancia en las bases de datos, en algunas ocasiones puede tener gran utilidad e impactos positivos. Es una de las principales herramientas de las que se dispone para la implementación de controles, así como para la reducción de tiempos en las consultas. Este último aspecto, que es el que interesa principalmente en el DW, tiene como explicación que los resultados de las consultas se pueden almacenar precalculados. Entre las desventajas de la redundancia se puede mencionar la mayor probabilidad de que existan inconsistencias y los mayores tiempos de actualización.
En las bases de datos OLTP tienen mayor impacto las desventajas que las ventajas. Es por ello que no es aconsejable su aplicación, salvo en casos controlados y en la medida en que se hayan evaluado bien sus prejuicios y la forma de contenerlos.
En el caso del DW pasa lo contrario: es una excelente solución para lograr mejoras de performance en las consultas, que es el principal objetivo de este tipo de base de datos. Por lo general, no tiene un costo significativo de tiempo extra en la actualización. La redundancia es manejada por la metadata (símil al diccionario de datos) y por los procesos ETL, por lo que su control queda más acotado.
Características de la redundancia en las bases de datos
Efecto que causa en las bases de datos
Base de datos OLTP
Data Warehouse
Acelerar consultas con datos precalculados
En la mayoría de los casos no es un beneficio significativo el que se logra, debido a que las consultas generalmente acceden a una pequeña cantidad de registros.
Es un beneficio significativo porque el objetivo es realizar consultas a grandes porciones de la base de datos, ya que, en caso de estar precalculados, permite evitar recorrer todos los registros desagregados.
Demora la actualización de datos al guardar los datos calculables en forma redundante
Es un perjuicio significativo, ya que, en la mayoría de los sistemas, la actualización es en tiempo real, lo que trae aparejadas demoras en la ejecución de las operaciones. Por ello está íntimamente relacionado con la eficiencia de las operaciones.
No es un perjuicio significativo, ya que en la mayoría de los casos la actualización no es en tiempo real (batch) y no trae problemas en una demora en dicho proceso.
Existe mayor probabilidad de generar inconsistencias
Es un perjuicio significativo, ya que existe la posibilidad de que se actualicen en forma incompleta los datos correspondientes a una transacción.
No es un perjuicio significativo, dado que los datos son una copia de una fuente de datos, que contiene a los originales, y debido a que el proceso de actualización es más controlado. No obstante, habrá que controlar que el ETL actualice en forma consistente todos los datos.
Permite controles
Puede ser un beneficio y un perjuicio significativo a la vez. Puede ser una herramienta muy importante para insertar controles que mejoren la confiabilidad de los datos almacenados, pero, por otro lado, tiene los mismos perjuicios derivados del retraso en la actualización.
No es significativo, ya que la actualización está controlada desde el ETL y se está efectuando una copia de los sistemas transaccionales donde deberían estar dichos controles.
Herramientas de acceso a la información
El BI tiene como objetivo permitir a los recursos humanos de una organización convertir los datos en información y la información en conocimiento para finalmente transformarlo en acciones alineadas a los objetivos del negocio.
Las herramientas de acceso a la información se conciben para tomadores de decisiones que sean autosuficientes para obtener la información que necesitan. Las necesidades, con respecto a la información, no son iguales para todos los niveles jerárquicos ni tampoco para las diferentes áreas funcionales. Este amplio espectro de necesidades es el que debe ser abarcado por las herramientas de BI.
Reportes
El reporte permite distribuir información, principalmente de rutina, acerca de distintos aspectos relacionados con la gestión. Es el tipo de BI más difundido ya que no requiere conocimientos adicionales para acceder a la información que necesita: su presentación, formato y contenido ya están definidos y listos para ser consumidos por la persona que los necesita.
Se usan para información de rutina y permiten a los usuarios su empleo en las tareas diarias.
Análisis multidimensional (exploración OLAP)
El análisis multidimensional es uno de los estilos de BI más poderosos. La problemática del negocio se modela para luego ser estudiada a partir de hechos y dimensiones de análisis.
El contexto para los hechos de negocio está dado por las dimensiones (tiempo, cliente, producto, etc.). Entonces, un hecho queda contextualizado una vez que se lo analiza a través de las diferentes dimensiones.
El usuario tiene disponibles una serie de hechos (o medidas) y dimensiones con las cuales ir armando en forma dinámica la información que le sea de utilidad para su análisis. Entonces puede incorporar de forma amigable las dimensiones y hechos disponibles dentro de un área de trabajo donde el software de BI le mostrará los resultados. El usuario elige variables, filtra, agrega y desagrega información en forma dinámica, rápida y amigable, obteniendo la capacidad de llegar hasta niveles de detalle habiendo partido de valores globales.
Estas herramientas permiten al usuario final sin conocimientos técnicos de bases de datos hacerle preguntas al DW en términos de negocio, usando conceptos del día a día, que conoce por el hecho de trabajar en ese entorno.
Tableros de control
Un tablero de control es un conjunto de indicadores predefinidos cuyo monitoreo periódico permitirá el conocimiento del estado de situación de la organización. Debe contestar a simple vista las preguntas críticas que se hace el decididor para diagnosticar y hacer un seguimiento permanente de su evolución.
Una organización (o un sector de ella) debe definir cuáles son los indicadores fundamentales (críticos), aquellos cuyo conocimiento sea definitorio para operar, competir y crear valor en el entorno en que se encuentra.
El usuario de estas herramientas accede a una pantalla principal donde podrá encontrar semáforos, tacómetros y otros tipos de gráficos que le permitan, de un vistazo, responder a las preguntas más críticas del negocio. Inclusive también podrá profundizar, en mayor nivel de detalle, en aquellos aspectos del tablero que lo requieran, o integrarse con otro tipo de herramientas, como reportes o análisis multidimensional.
Minería de datos (data mining/ML) y Analytics
La minería de datos (data mining) consiste en analizar de forma automática (o semiautomática), mediante diferentes tipos de algoritmos y técnicas estadísticas, grandes conjuntos de datos con el objetivo de encontrar patrones que de lo contrario podrían permanecer ocultos. También permite desarrollar modelos predictivos en función de los datos históricos. Su objetivo es encontrar conocimiento allí donde, aparentemente, hay sólo grandes volúmenes de datos inconexos.
Las técnicas de minería de datos pueden ser usadas por las instituciones para el desarrollo de modelos predictivos, que apuntan a disminuir la incertidumbre sobre un comportamiento futuro, o de modelos descriptivos, que se limitan a explicar mejor hechos ya ocurridos.
Los modelos predictivos pretenden estimar valores futuros para variables que se denominan “objetivo” (dependientes o de salida) a partir de otras variables guardadas en la base de datos a las que se denomina “predictoras” (o independientes).
Los modelos descriptivos identifican patrones que explican o resumen los datos guardados en la base de datos. Es decir que no predicen nuevos datos, sino que permiten clasificar, ver más claramente los datos que representan la realidad existente o pasada.
Distribución proactiva
La distribución proactiva consiste en que el software de BI envíe la información a los usuarios. Es decir que la información los busca a ellos en vez de generarse como respuesta a las consultas de los usuarios. Permite distribuir la información, tanto a usuarios internos como a los externos.
Estos envíos se clasifican según la circunstancia que genera su realización: